在開始今天的主題之前,先跟大家分享一個好消息,Google Play 拒絕了 App 的上架申請。以第一次申請來說,只花三天的時間審核,比預期上快了很多。說是好消息,是因為拒絕的理由,也許之後也會碰到,可以藉這次機會檢視是哪些地方需要注意的。如何處理被拒絕上架的,就留著明天的篇幅來說吧。
複習一下昨天的進度,把原本 ProfileListResponseTest
驗證 results 下的 Profile 物件要搬進去 ProfileTest
裡面。先來看看 Profile 當初想要驗證的內容,主要有下列兩個:
所以回頭檢視 result 下原始 JSON 資料,有沒有可驗證不同 Gender enum 的資料先拉出來,分別是 MALE、 FEMALE 和 NONE,而這三筆資料底下的 films 都有值。因此 test 的部份會拆成對這些邏輯個別進行驗證
來看看最後的成果吧:
class ProfileTest : BaseTest() {
@Test
fun genderFemaleTest() {
val profile = getProfile("profile_female")
Assert.assertEquals(Gender.FEMALE, profile.genderType)
}
@Test
fun genderMaleTest() {
val profile = getProfile("profile_male")
Assert.assertEquals(Gender.MALE, profile.genderType)
}
@Test
fun genderNoneTest() {
val profile = getProfile("profile_none")
Assert.assertEquals(Gender.NONE, profile.genderType)
}
@Test
fun filmIdsTest() {
val filmIds = getProfile("profile_filmIds").filmIds
Assert.assertEquals("1", filmIds[0])
Assert.assertEquals("2", filmIds[1])
Assert.assertEquals("3", filmIds[2])
Assert.assertEquals("6", filmIds[3])
}
private fun getProfile(fileName: String): Profile {
return Gson().fromJson(
readJsonFile(fileName),
Profile::class.java
)
}
}